function Benchmark() {
	
	var assert = new Assert();
	
	this.benchmarkEuclidianSmallArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9]
		                        ];
		var area = new Area(10, 10, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkEuclideanSmallArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanSmallArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanSmallArea3: "+path.computeTimeMs+" ms");
	};
	
	this.benchmarkEuclidianMediumArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[5,13],[5,14],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9],[7,10],[7,11],[7,12],[7,13],[7,14]
		                        ];
		var area = new Area(25, 25, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkEuclideanMediumArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanMediumArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanMediumArea3: "+path.computeTimeMs+" ms");
	};
	
	this.benchmarkEuclidianLargeArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[5,13],[5,14],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9],[7,10],[7,11],[7,12],[7,13],[7,14]
		                        ];
		var area = new Area(50, 50, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkEuclideanLargeArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanLargeArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkEuclideanLargeArea3: "+path.computeTimeMs+" ms");
	};
	
	this.benchmarkModifiedChebyshevSmallArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9]
		                        ];
		var area = new Area(10, 10, null, impassablePoints);
		distanceCalculator = new ModifiedChebyshevDistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkModifiedChebyshevSmallArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevSmallArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 9, 9, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevSmallArea3: "+path.computeTimeMs+" ms");
	};
	
	this.benchmarkModifiedChebyshevMediumArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[5,13],[5,14],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9],[7,10],[7,11],[7,12],[7,13],[7,14]
		                        ];
		var area = new Area(25, 25, null, impassablePoints);
		distanceCalculator = new ModifiedChebyshevDistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkModifiedChebyshevMediumArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevMediumArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 24, 24, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevMediumArea3: "+path.computeTimeMs+" ms");
	};
	
	this.benchmarkModifiedChebyshevLargeArea = function() {
		var impassablePoints = [
		                        	[5,0],[5,1],[5,2],[5,3],[5,4],        [5,6],[5,7],[5,8],[5,9],[5,10],[5,11],[5,12],[5,13],[5,14],
		                        	
		                        	[7,0],[7,1],[7,2],       [7,4], [7,5], [7,6],[7,7],[7,8],[7,9],[7,10],[7,11],[7,12],[7,13],[7,14]
		                        ];
		var area = new Area(50, 50, null, impassablePoints);
		distanceCalculator = new ModifiedChebyshevDistanceCalculator();		
		aStar = new AStar();
		
		var path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole(area.toString(path, "<br>"));
		debugConsole.toConsole("benchmarkModifiedChebyshevLargeArea1: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevLargeArea2: "+path.computeTimeMs+" ms");
		path = aStar.getPath(0, 0, 49, 49, area, distanceCalculator, 3);
		debugConsole.toConsole("benchmarkModifiedChebyshevLargeArea3: "+path.computeTimeMs+" ms");
	};
	
};